'|' +
'www\\d{0,3}[.]' + // www.
'|' +
- '[a-z0-9.\\-]+[.][a-z]{2,4}/' + // foo.xx/
+ '([a-z0-9\\-]+[.])+[a-z]{2,4}/' + // foo.xx/
')' +
'(?:' + // one or more:
'[^\\s()<>]+' + // run of non-space non-()
input: 'This is a www.gnome.org/scheme-less test.',
output: [{url: 'www.gnome.org/scheme-less', pos: 10}],
},
+ {
+ input: 'This is a gnome.org/scheme-less test without www.',
+ output: [{url: 'gnome.org/scheme-less', pos: 10}],
+ },
+ {
+ input: 'This is a status.gnome.org/scheme-less test.',
+ output: [{url: 'status.gnome.org/scheme-less', pos: 10}],
+ },
{
input: 'This is a http://www.gnome.org:99/port test.',
output: [{url: 'http://www.gnome.org:99/port', pos: 10}],
input: 'This is surely@not.a/url test.',
output: [],
},
+ {
+ input: 'This is not..aa/url test.',
+ output: [],
+ },
+ {
+ input: 'This is ..not/a-url test.',
+ output: [],
+ },
+ {
+ input: 'This is .absolutely.not/a-url test.',
+ output: [],
+ },
];
for (const param of urlParameters) {